This invention relates to the field of data communication and more particularly to a protocol, applications programming interface (API), and method for communicating scanned digital images (for example, images from photographic film) within a protocol that provides additional information regarding the images.
The need and demand for transferring image data across a network is rapidly increasing. People have started taking pictures using digital cameras. Processing facilities have begun offering digital scanning services as an optional supplemental service of their conventional film processing operations. For example, a customer can request that digitized versions of their film images be written to a diskette, burned onto a CDROM (compact disk read-only memory), or even e-mailed across the internet or made available on an internet web site for downloading by their friends and relatives.
Recently, a popular service has arrived which accepts digital image data and writes corresponding images onto photographic paper. The resulting prints are superior in many ways to digital images printed on special coated paper using inkjet technology. Further services can provide special borders, image effects and color corrections, mailing to selected recipients, and other value-adding services for the image owner.
Further services are being developed to provide other services for digital images, such as converting conventional images (prints or negatives) into a digital format, archiving image data, internet publishing, and delivery of images.
A large number of data formats have been developed over the years for holding image data, such as JPEG (joint photographic experts group-type compression format), TIFF (tagged image file format), GIF (graphics interchange format), BMP (bit map format), and other formats. Typically, such formats include a compression format and a data structure definition. An aggregation of images could be held in a directory having a plurality of individual, e.g., JPEG images. However, a mere directory of images lacks organization, indexing, image manipulation information, image ownership information, etc.
Digital images are stored on various media, some that are fixed in location (such as hard disks) and others that can be moved or mailed (such as diskettes, DVDs, or CDROMs). Digital images can also be transferred over communications media such as the internet, local networks, or even a USB (universal serial bus) cable connecting a digital camera to a personal computer. Many different and incompatible protocols and structures have been proposed for transferring and storing images, however a single efficient comprehensive mechanism has not existed.
There is thus a need for a remote film scanning (RFS) application programming interface (API), an image transfer standard, a data structure and/or a protocol for transferring sets of digital images.
The present invention provides apparatus and methods for transferring and storing digital image data.
The present invention provides a system and a method for transferring digital images between a source terminal and a repository system interconnected by a communications medium. For example, in some embodiments, the communications medium includes the internet. In other embodiments, the medium includes wireless transmission of data. In yet other embodiments, a private network is used.
In some embodiments, the method includes sending a first poll request (e.g., a next-reel-poll, also called N_POLL, or a next-and-previous-reel-poll, also called NAP_POLL) across the communications medium from the repository system to the source terminal, acquiring into the source terminal a reel folder, the reel folder having a reel-control data structure and a reel-image data structure, and in response to receipt of the first poll request at the source terminal and if the reel folder is acquired, sending reel folder address information corresponding to the acquired reel folder from the source terminal to the repository system. This method also includes, in response to receipt of the sent reel folder address information at the repository system, sending a reel-control-data-structure-fetch request across the communications medium from the repository system to the source terminal, sending the reel-control data structure of the reel folder from the source terminal to the repository system via the communications medium, sending the reel-image data structure of the reel folder from the source terminal to the repository system via the communications medium, and storing the reel-control data structure and the reel-image data structure in the repository system.
In some embodiments, the invention includes a computer-usable information medium having control information thereon for causing a suitably programmed system to transfer digital images between a source terminal and a repository system interconnected by a communications medium by performing one or more of the above methods when such program is executed on the system.
Another aspect of the present invention provides a remote film scanning applications programming interface (API). In some embodiments, the API includes a reel control data structure associated with a particular reel of images. The reel control structure includes a reel header and a plurality of roll structures. The reel header includes a substantially unique identifying reel number (ReelNumber). Each roll structure includes a mailer identification (MailerId) associated with a physical address of an entity having an interest in images of an associated roll, and a splice code (SpliceCode) identifying a splice location of the roll on the reel.
The present invention also provides a computer-usable communications medium carrying the API. In some embodiments, the medium includes the internet. In some embodiments, the use of HTTPS data transfer is avoided by tracking valid URLs between the source terminal and the repository, thus allowing the use of HTTP-type data transfer.
Another aspect of the present invention provides a remote film scanning system for transferring digital image data on a network. This system includes a network, and means (equivalent to those described herein) for transferring the digital image data between a source terminal and a repository system interconnected by the network in a common applications programming interface.